Skip to content

chore(threatcrush-scan): pin 0.11.5, and pack 2.0.2 to re-sync consumers - #1003

Merged
ralyodio merged 1 commit into
masterfrom
worktree-threatcrush-pin-0-11-5
Aug 30, 2026
Merged

chore(threatcrush-scan): pin 0.11.5, and pack 2.0.2 to re-sync consumers#1003
ralyodio merged 1 commit into
masterfrom
worktree-threatcrush-pin-0-11-5

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

What

Bumps the threatcrush-scan pack to ThreatCrush 0.11.5, and the pack itself to 2.0.2 so the fleet re-syncs consumers.

threatcrushPackageSpec   @profullstack/threatcrush@0.11.3 -> @0.11.5
threatcrushIntegrity     sha512-lxWvTt... -> sha512-kIa0rM...
version                  2.0.1 -> 2.0.2

Why

The pack pins an exact spec plus an SRI hash and refuses to install on a mismatch. That is deliberate — but it means a ThreatCrush release does not reach pack consumers until someone moves the pin. v0.11.5 published today, so consumers were still installing 0.11.3.

0.11.5 carries the threatcrush restart command plus three installer fixes: the installer now prefers npm over pnpm, removes a stale global install left behind by another package manager, and warns when PATH still resolves to an older binary instead of printing "installed successfully" next to the old version number.

The hash

Not taken from npm view alone — reproduced from the published tarball, and the two agree:

curl -sL "$(npm view @profullstack/threatcrush@0.11.5 dist.tarball)" -o t.tgz
printf 'sha512-'; openssl dgst -sha512 -binary t.tgz | openssl base64 -A
# sha512-kIa0rMs/TdINhryjDDyO2butWxvk6pj4bwnARqhjpOduN6+TcbgAPeZE4cCeZlRqOpq9r0P8cNkjuzd+rN166Q==

That is exactly the check the workflow performs before installing, so this pin is verified against the bytes the registry actually serves.

Testing

  • packages/actions/src/index.test.ts — 21/21 pass (this is the suite that reads the pack's threatcrushPackageSpec / threatcrushIntegrity defaults).
  • packages/actions-fleet-core — 69/69 pass across 6 files, including action-pack/schema, render and catalog.
  • Prerequisite workspace packages were built first, per the usual fresh-worktree requirement.
  • README's two default rows updated to match the manifest.

🤖 Generated with Claude Code

https://claude.ai/code/session_01H3GDps1fD6ccfo93B3ePy1

ThreatCrush v0.11.5 is published. The pack pins an exact spec plus an SRI
hash and fails closed on a mismatch, so a threatcrush release does not reach
pack consumers until the pin moves — this is that bump.

  threatcrushPackageSpec  @profullstack/threatcrush@0.11.3 -> @0.11.5
  threatcrushIntegrity    sha512-lxWvTt... -> sha512-kIa0rM...

The hash was not taken from `npm view` alone. It was reproduced from the
published tarball and the two agree:

  curl -sL $(npm view @profullstack/threatcrush@0.11.5 dist.tarball) -o t.tgz
  printf 'sha512-'; openssl dgst -sha512 -binary t.tgz | openssl base64 -A

  -> sha512-kIa0rMs/TdINhryjDDyO2butWxvk6pj4bwnARqhjpOduN6+TcbgAPeZE4cCeZlRqOpq9r0P8cNkjuzd+rN166Q==

0.11.5 carries the `threatcrush restart` command and three installer fixes:
the installer now prefers npm over pnpm, removes a stale global install left
by another package manager, and warns when PATH still resolves to an older
binary instead of reporting success with the old version number.

Pack version 2.0.1 -> 2.0.2 so the fleet re-syncs consumers. README updated
to match both defaults.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H3GDps1fD6ccfo93B3ePy1
@github-actions

Copy link
Copy Markdown

vu1nz Security Review

0 finding(s) in PR #?

No security issues found.

@github-actions

Copy link
Copy Markdown

ThreatCrush Security Scan

49 finding(s)

HIGH/CRITICAL: 1 | MEDIUM: 14 | LOW: 34

Severity Rule Location
HIGH js-host-header-trust packages/bots/wechat/src/index.ts:405
MEDIUM redos-nested-quantifier packages/actions-fleet-core/src/action-pack/schema.ts:3
MEDIUM redos-nested-quantifier packages/core/src/setup-helpers.ts:583
MEDIUM redos-nested-quantifier packages/policy/src/rules/bundle-id.ts:3
MEDIUM sql-string-concatenation packages/targets/deploy-wordpress/src/index.ts:154
MEDIUM redos-nested-quantifier packages/targets/desktop-linux/src/index.ts:19
MEDIUM redos-nested-quantifier packages/targets/desktop-mac/src/index.ts:15
MEDIUM redos-nested-quantifier packages/targets/desktop-steamos/src/index.ts:28
MEDIUM redos-nested-quantifier packages/targets/mobile-android/src/index.ts:9
MEDIUM redos-nested-quantifier packages/targets/mobile-ios/src/index.ts:11
MEDIUM redos-nested-quantifier packages/targets/tv-androidtv/src/index.ts:14
MEDIUM redos-nested-quantifier packages/targets/tv-firetv/src/index.ts:13
MEDIUM redos-nested-quantifier packages/targets/tv-tvos/src/index.ts:14
MEDIUM redos-nested-quantifier packages/targets/tv-webos/src/index.ts:26
MEDIUM js-unescaped-html-sink sites/sh1pt.com/app/blog/[slug]/page.tsx:76
LOW secret-generic-credential packages/affiliates/skimlinks/src/index.test.ts:25
LOW secret-generic-credential packages/affiliates/skimlinks/src/index.test.ts:71
LOW secret-generic-api-key packages/affiliates/sovrn/src/index.ts:28
LOW secret-generic-credential packages/agent-providers/opencode/src/__tests__/opencode.test.ts:99
LOW js-nosql-injection packages/ai/amazon-bedrock/src/index.test.ts:121
LOW secret-generic-credential packages/ai/amazon-bedrock/src/index.ts:9
LOW secret-generic-credential packages/ai/amazon-bedrock/src/index.ts:10
LOW secret-generic-credential packages/ai/amazon-bedrock/src/index.ts:11
LOW secret-generic-credential packages/bridges/matrix/src/index.ts:58
LOW secret-generic-credential packages/bridges/matrix/src/index.ts:59
LOW secret-generic-credential packages/bridges/slack/src/index.test.ts:259
LOW secret-generic-credential packages/captcha/captchasolver/src/index.ts:34
LOW secret-generic-credential packages/cli/src/commands/secrets.ts:189
LOW secret-generic-credential packages/cloud/linode/src/index.ts:15
LOW secret-generic-credential packages/observability/sentry/src/index.ts:15
LOW secret-generic-credential packages/outreach/producthunt/src/index.ts:103
LOW secret-generic-credential packages/promo/posthog/src/index.ts:23
LOW secret-generic-credential packages/scanners/threatcrush/test/scan-output.txt:35
LOW secret-generic-credential packages/scanners/threatcrush/test/scan-output.txt:40
LOW secret-database-url packages/scanners/threatcrush/test/scan-output.txt:54
LOW secret-generic-credential packages/security/snyk/src/index.ts:26
LOW secret-generic-credential packages/social/hashnode/src/index.ts:4
LOW secret-generic-credential packages/social/linkedin/src/index.ts:3
LOW secret-generic-credential packages/social/linkedin/src/index.ts:4
LOW secret-generic-credential packages/social/medium/src/index.ts:4
LOW secret-generic-credential packages/social/snapchat/src/index.ts:5
LOW secret-generic-credential packages/social/tiktok/src/index.ts:5
LOW secret-generic-credential packages/targets/plugin-vscode/src/index.test.ts:115
LOW secret-generic-credential packages/targets/registry-ans/src/index.test.ts:79
LOW secret-generic-credential packages/targets/registry-ans/src/index.ts:49
LOW secret-generic-credential packages/targets/sdk-pypi/src/index.test.ts:49
LOW secret-generic-credential packages/vcs/gitlab/src/index.test.ts:96
LOW secret-generic-credential sites/sh1pt.com/supabase/config.toml:303
LOW secret-generic-credential sites/sh1pt.com/supabase/config.toml:335

Snippets are redacted; ThreatCrush never prints matched credential material.

@ralyodio
ralyodio merged commit 0cf4398 into master Aug 30, 2026
8 checks passed
@ralyodio
ralyodio deleted the worktree-threatcrush-pin-0-11-5 branch August 30, 2026 13:40
ralyodio added a commit that referenced this pull request Aug 30, 2026
Lockstep bump of every published package. The six packages the cli depends on
had drifted to 0.3.0 while the cli sat at 0.3.1; they are all 0.3.2 now, which
is what the lockstep script exists to guarantee — pnpm rewrites `workspace:` to
a real range at publish time, so anything the cli depends on has to reach the
registry at a version that exists.

Since v0.3.0:

- threatcrush-scan pack pinned to @profullstack/threatcrush@0.11.5 with a
  reproduced SRI hash, pack 2.0.2 so the fleet re-syncs consumers (#1003)
- unique rollout instance IDs (#1002)
- cloud vault passphrase prompt no longer hangs on non-TTY stdin (#1001)
- DNS config persisted in JSON mode (#1000)
- netcup adapter shipped in the command tree (#969)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H3GDps1fD6ccfo93B3ePy1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant